В данной статье будет рассмотрено создание учетных записей и объектов при помощи Remote API. Эти элементы являются ключевыми при работе с Wialon, а их создание требует выполнения цепочки обязательных действий.
Создание учетной записи
Перед выполнением данного действия необходимо вспомнить два важных термина:
- Создатель — это пользователь, от имени которого создан определенный элемент системы.
- Учетная запись — это макроэлемент системы, который представляет собой единство ресурса, пользователя и тарифного плана.
Исходя из этого, чтобы создать учетную запись, необходимо:
- Найти подходящий тарифный план.
- Найти системный ID пользователя-создателя, под которым будет находиться будущий создатель учетной записи.
- От имени найденного пользователя создать нового пользователя.
- От имени нового пользователя создать ресурс.
- Объединить нового пользователя, ресурс и тарифный план в учетную запись.
Рассмотрим запросы, которые понадобятся на каждом из этих шагов, на следующем примере: необходимо создать учетную запись с именем sdk_account, которая по иерархии сервиса будет находиться под учетной записью пользователя manager.
1. Поиск тарифного плана
Используем запрос core/get_account_data.
https://hst-api.wialon.com/wialon/ajax.html?svc=core/get_account_data¶ms={"type":1}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Имена назначенных тарифных планов будут отображаться в ответе на запрос в параметре subPlans. Предположим, что мы будем использовать тарифный план с именем standard_client.
2. Поиск системного ID пользователя-создателя
Используем запрос core/search_items.
https://hst-api.wialon.com/wialon/ajax.html?svc=core/search_items¶ms={"spec":{"itemsType":"user","propName":"sys_name","propValueMask":"manager","sortType":"sys_name"},"force":1,"flags":1,"from":0,"to":0}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"itemsType":"user" | Поиск будет выполнен по пользователям. |
"propName":"sys_name" | Поиск будет выполнен по имени элемента. |
"propValueMask":"manager" | В ответе будет отображен пользователь, имя которого полностью совпадает с выражением manager. |
"sortType":"sys_name" | Сортировка будет выполнена по имени элемента. |
"force":1 | Результаты предыдущих поисков не будут учитываться. |
"flags":1 | В ответе будет содержаться только информация об основных свойствах. |
"from":0;"to":0 | Ограничения по количеству найденных элементов не будут применяться. |
Системный ID пользователя будет отображаться в ответе на запрос в параметре id. Предположим, он будет иметь значение 11111.
3. Создание нового пользователя
Используем запрос core/create_user.
https://hst-api.wialon.com/wialon/ajax.html?svc=core/create_user¶ms={"creatorId":11111,"name":"sdk_account","password":"Pa%24%24w0rd","dataFlags":1}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"creatorId":11111 | Создателем нового пользователя будет пользователь с системным ID 11111. |
"name":"sdk_account" | Новый пользователь будет иметь имя sdk_account. |
"password":"Pa%24%24w0rd" | Новый пользователь будет иметь пароль Pa$$w0rd. |
"dataFlags":1 | В качестве ответа будут отображены только основные свойства нового пользователя. |
Системный ID пользователя будет отображаться в ответе на запрос в параметре id. Предположим, он будет иметь значение 22222.
4. Создание ресурса
Используем запрос core/create_resource.
https://hst-api.wialon.com/wialon/ajax.html?svc=core/create_resource¶ms={"creatorId":22222,"name":"sdk_account","dataFlags":1,"skipCreatorCheck":0}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"creatorId":22222 | Создателем нового ресурса будет пользователь с системным ID 22222. |
"name":"sdk_account" | Новый ресурс будет иметь имя sdk_account. |
"dataFlags":1 | В качестве ответа будут отображены только основные свойства нового ресурса. |
"skipCreatorCheck":0 | Проверить, является ли пользовать создателем каких-либо элементов системы на данный момент. |
Системный ID ресурса будет отображаться в ответе на запрос в параметре id. Предположим, он будет иметь значение 33333.
5. Объединение в учетную запись
Используем запрос account/create_account.
https://hst-api.wialon.com/wialon/ajax.html?svc=account/create_account¶ms={"itemId":33333,"plan":"standard_client"}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"itemId":33333 | Новая учетная запись будет содержать в себе ресурс с системным ID 33333. |
"plan":"standard_client" | Новая учетная запись будет использовать тарифный план standard_client. |
Создание объекта
Чтобы создать объект с помощью Remote API, необходимо:
- Найти системный ID типа оборудования.
- Найти системный ID пользователя-создателя, в учетной записи которого будет находиться будущий объект.
- Создать объект.
- Присвоить объекту уникальный ID.
Рассмотрим необходимые запросы на следующем примере: необходимо создать объект Delivery truck с типом оборудования Wialon IPS и уникальным ID 12345 в учетной записи пользователя sdk_account.
1. Поиск системного ID типа оборудования
Используем запрос core/get_hw_types.
https://hst-api.wialon.com/wialon/ajax.html?svc=core/get_hw_types¶ms={"filterType":"name","filterValue":["Wialon%20IPS"],"includeType":0,"ignoreRename":1}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"filterType":"name" | Фильтрация будет осуществляться по имени типа оборудования. |
"filterValue":["Wialon%20IPS"] | Поиск будет выполнен по выражению Wialon IPS. |
"includeType":0 | В ответе не будет показана дополнительная информация о типе оборудования. |
"ignoreRename":1 | В ответе будут проигнорированы переименования типов оборудования. |
Системный ID типа оборудования будет отображаться в ответе на запрос в параметре id. Предположим, он будет иметь значение 44444.
2. Поиск системного ID пользователя-создателя
Используем запрос core/search_items.
https://hst-api.wialon.com/wialon/ajax.html?svc=core/search_items¶ms={"spec":{"itemsType":"user","propName":"sys_name","propValueMask":"sdk_account","sortType":"sys_name"},"force":1,"flags":1,"from":0,"to":0}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"itemsType":"user" | Поиск будет выполнен по пользователям. |
"propName":"sys_name" | Поиск будет выполнен по имени элемента. |
"propValueMask":"sdk_account" | В ответе будет отображен пользователь, имя которого полностью совпадает со словом sdk_account. |
"sortType":"sys_name" | Сортировка будет выполнена по имени элемента. |
"force":1 | Результаты предыдущих поисков не будут учитываться. |
"flags":1 | В ответе будет содержаться только информация об основных свойствах. |
"from":0;"to":0 | Ограничения по количеству найденных элементов не будут применяться. |
Системный ID пользователя будет отображаться в ответе на запрос в параметре id. Предположим, он будет иметь значение 22222.
3. Создание объекта
Используем запрос core/create_unit.
https://hst-api.wialon.com/wialon/ajax.html?svc=core/create_unit¶ms={"creatorId":22222,"name":"Delivery%20truck","hwTypeId":"44444","dataFlags":1}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"creatorId":22222 | Создателем нового объекта будет пользователь с системным ID 22222. |
"name":"Delivery%20truck" | Имя нового объекта будет Delivery truck. |
"hwTypeId":"44444" | Системный ID типа оборудования для нового объекта будет иметь значение 44444. |
"dataFlags":1 | В качестве ответа будут отображены только основные свойства нового объекта. |
Системный ID объекта будет отображаться в ответе на запрос в параметре id. Предположим, он будет иметь значение 55555.
4. Указание уникального ID
Используем запрос unit/update_device_type.
https://hst-api.wialon.com/wialon/ajax.html?svc=unit/update_device_type¶ms={"itemId":55555,"deviceTypeId":"44444","uniqueId":"12345"}&sid=ИДЕНТИФИКАТОР_СЕССИИ
Параметр и его значение | Описание |
---|---|
"itemId":55555 | Изменение настроек будет осуществляться для объекта с системным ID 55555. |
"deviceTypeId":"44444" | Системный ID типа оборудования будет иметь значение 44444. |
"uniqueId":"12345" | Уникальный ID объекта будет иметь значение 12345. |